﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Timetable.Base.Entities;
using Ninject;
using Timetable.Base.Interfaces.Services.DataServices;
using Timetable.Base.Interfaces.Services.DataServices.Extensions;

namespace Timetable.Site.Controllers.Api
{
    public class GroupController : BaseApiController<Group>
    {
        /// <summary>
        /// Возвращает список групп для выбраного факультета и курса
        /// </summary>
        /// <param name="facultyId">Идентификатор факультета</param>
        /// <param name="courseId">Идентификатор группы</param>
        /// <returns></returns>
        public HttpResponseMessage Get(int facultyId, int courseId)
        {
            return CreateResponse<int, int, IEnumerable<Group>>(privateGet, facultyId, courseId);
        }

        private IEnumerable<Group> privateGet(int facultyId, int courseId)
        {
            return DataService.GetGroups(facultyId, courseId);
        }
    }
}